﻿using System;
using System.Linq;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using Lilium.UI;
using Lilium.Control.Reactive;
using Lilium;
using Lilium.UI.Forms;

namespace ReactiveUI
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();

            var ui = from label1 in UI.Label("Label1")
                     from label2 in UI.Label("Label2")
                     from label3 in UI.Label("Label3")
                     from label4 in UI.Label("Label4")
                     from label5 in UI.Label("Label5")
                     from label6 in UI.Label("Label6")
                     from label7 in UI.Label("Label7")
                     from label8 in UI.Label("Label8")
                     from label9 in UI.Label("Label9")
                     from label10 in UI.Label("Label10")
                     from label11 in UI.Label("Label11")
                     from label12 in UI.Label("Label12")
                     from label13 in UI.Label("Label13")
                     from label14 in UI.Label("Label14")
                     from label15 in UI.Label("Label15")
                     from label16 in UI.Label("Label16")
                     from label17 in UI.Label("Label17")
                     from label18 in UI.Label("Label18")
                     from label19 in UI.Label("Label19")
                     from label20 in UI.Label("Label20")
                     select "Жопа";

            var viewport = new FormViewport(this);
            viewport.RunUI(ui);

            /*
            formViewAdapter1.BeginInitialize();

            var ui = new UIState<Nothing>(formViewAdapter1, Nothing.Value);

            var yoba = from label1 in ui.Label("Static Label")
                       from text in ui.TextField()
                       let doubleText = 
                            from s in text 
                            select s + " " + s
                       from tb1 in ui.TextField(doubleText)
                       from dl in ui.Label(text.Select(t => "Dynamic Label: " + t))
                       select doubleText;

            formViewAdapter1.EndInitialize();
            */
        }
    }
}